package ${basePackage}.service;

import ${basePackage}.entity.${domainNameUpperCamel}${entity};
import com.github.pagehelper.PageInfo;

import java.util.List;
import java.util.Map;
/**
 * ${description} Interface
 * @Author ${author}
 * @Data ${date}
 */
public interface ${domainNameUpperCamel}Service  {
    /**
     *  insert
     *  @Author ${author}
     *  @Date ${date}
     *  @param record Entity class
     */
   boolean insert(${domainNameUpperCamel}${entity} record);
    /**
     *  Not empty new
     *  @Author ${author}
     *  @Date ${date}
     *  @param record Entity class
     */
   boolean insertSelective(${domainNameUpperCamel}${entity} record);
    /**
     * A batch of new
     * @Author ${author}
     * @Date ${date}
     * @param  t An entity set
     */
   boolean insertBatch(List<${domainNameUpperCamel}${entity}> t);
    /**
     *  update
     *  @Author ${author}
     *  @Date ${date}
     *  @param  record Entity class
     */
   boolean update(${domainNameUpperCamel}${entity} record);
    /**
     *  Not empty update
     *  @Author ${author}
     *  @Date ${date}
     *  @param record Entity class
     */
   boolean updateSelective(${domainNameUpperCamel}${entity} record);
    /**
     *  Physical deletion by ID
     *  @Author ${author}
     *  @Date ${date}
     *  @param id primary
     */
   boolean deleteById(${pkDataType} id);
    /**
     *  Batch Physical Deletion
     *  @Author ${author}
     *  @Date ${date}
     *  @param ids The primary key array
     */
   boolean deleteBatchById(List<${pkDataType}> ids);
     /**
      *  Load by ID
      *  @Author ${author}
      *  @Date ${date}
      *  @param id primary
      */
   ${domainNameUpperCamel}${entity} findById(${pkDataType} id);
     /**
      *  Get list data
      *  @Author ${author}
      *  @Date ${date}
      *  @param map Default empty data set
      */
   PageInfo<${domainNameUpperCamel}${entity}> findPageList(Integer pageNo, Integer pageSize,Map<String, Object> map);

}
